Packet-based communication systems allow the user of a device, such as a personal computer, to communicate across a computer network such as the internet. Packet-based communication systems provide features to the user such as voice over internet protocol (“VoIP”) calling, video calling, file transfer, instant messaging (“IM”), and voicemail. These systems are beneficial to the user as they are often of significantly lower cost than fixed line or mobile networks. This may particularly be the case for long-distance communication. To use a packet-based communication system, the user must install and execute communication client software on their user terminal. The communication client software enables the connections as well as other functions such as registration and authentication.
One type of packet-based communication system uses a peer-to-peer (“P2P”) overlay network topology operating on the internet. To enable access to a peer-to-peer system, the user must execute P2P client software provided by a P2P software provider on their user terminal, and register with the P2P system. When the user registers with the P2P system the client software is provided with a digital certificate from a server. Once the client software has been provided with the certificate, communication can subsequently be set-up and routed between user terminals of the P2P system without the further use of a server. The network address of a destination user terminal can be found by the client software accessing a P2P database distributed across other user terminals of the P2P system. Once the network address of the destination user terminal is known, the calling user terminal can exchange of one or more digital certificates with the destination user terminal. The exchange of the digital certificates between the user terminals provides proof of the users' identities and that they are suitably authorised and authenticated in the P2P system. Therefore, the presentation of digital certificates provides trust in the identity of the user. It is therefore a characteristic of peer-to-peer communication that the communication can be established and proceeds without using a server, by operating from end-user terminal to end-user terminal with support provided by other end-user terminals of the P2P system. Further details on such a P2P system are disclosed in WO 2005/009019.
A problem with packet-based communication systems is that they are not well optimised for the delivery of data (in the form of, for example, video or voice calls or file transfers) to groups of user terminals. Typically, packet-based communication systems operate by establishing multiple one-to-one connections directly with each of the user terminals in the group. This gives rise to significant resource demands at the source user terminal, in terms of available bandwidth and processing.
There is therefore a need for a technique to address the aforementioned problems with the distribution of data to groups of user terminals in a packet-based communication system.